package me.zhengjie.modules.repository.enterprise;

import me.zhengjie.modules.domain.enterprise.EnterpriseFinancing;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;
import java.util.Map;

@Mapper
public interface EnterpriseFinMapper {

    /**
     * 批量添加企业融资历史信息
     * @param list
     * @return
     */
    int insertEnterpriseFinByList(List<EnterpriseFinancing> list);

    /**
     * 自动批量添加企业投融资历史数据
     * @param list
     * @return
     */
    int AutoInsertEnterpriseFinByList(List<EnterpriseFinancing> list);

    /**
     * 根据企业名称查询融资历史信息
     * @param name
     * @return
     */
    List<EnterpriseFinancing> selectEnterpriseFinByName(String name);

    /**
     * 根据条件分页查询企业融资历史信息
     * @param map
     * @return
     */
    List<EnterpriseFinancing> selectEnterpriseFinForPageByConditions(Map<String,Object> map);

    /**
     * 根据条件查询企业融资历史信息条数
     * @param map
     * @return
     */
    int selectEnterpriseFinForPageByConditionsToTotal(Map<String,Object> map);

    /**
     * 统计论次
     * @return
     */
    List<String> selectRound();
    /**
     * 统计披露时间
     * @return
     */
    List<String> selectPubTime();

    /**
     * 查询融资历史总条数
     * @return
     */
    List<Integer> selectEnterpriseFinCount();

    /**
     * 查询融资历史总条数
     * @return
     */
    List<Integer> selectEnterpriseFinCountByCondition(Integer honor);

    /**
     * 根据获取近五年的融资总数
     * @param date
     * @return
     */
    int selectEnterpriseFinByYearCount(String date);

    /**
     * 根据获取近五年的融资总数
     * @param map
     * @return
     */
    int selectEnterpriseFinByYearAndConditionCount(Map<String, Object> map);
    /**
     * 里程碑
     * @param map
     * @return
     */
    int selectEnterpriseFinByIdAndYearForCount(Map<String,Object> map);
}
